A Domain refers to group of Web services provided by or in behalf of an enterprise. Usually it comprises a set of network addresses, each of which provides one or more Web services (HTTP, Telnet, FTP, E-mail, etc.).
A Domain name is the part of the URL (Uniform Resource Locator) that indicates to a domain name server using the domain name system (DNS) whether and to which location to forward a request for a Web page or Web service. The domain name is mapped to an IP address, which represents an identifiable point within the Internet.
IP-address (Internet Protocol address) is the address of a computer attached to a TCP/IP network. Every client and server station that can be addressed via the Internet must have an IP address. A specific computer can have more than one IP address associated with it. If a computer has more than one IP address, these addresses can be associated with different NICs (Network Interface Cards), or several IPs can be associated with one NIC. In some cases, one IP is associated with several computers, using a Load Balancer or firewall. In that case, the external device (load balancer or firewall) translates the external IP to some local IP, and vice-versa.
IP addresses are written as four sets of numbers separated by periods; for example, 204.171.64.2. The TCP/IP packet uses 32 bits to contain the IP address, which is made up of a network address (NetID) and host address (HostID). Certain high-order bits identify class types and some numbers are reserved. On the Internet itself—that is, between the router that moves packets from one point to another along the route—only the network part of the address is looked at.
While more bits are used for network addresses, fewer remain for hosts. As the Internet becomes popular, the IP address resources are exhausted, and consequently the IP addresses become a precious resource.
A few years ago, every domain on the Internet had its own IP address, but currently, due to the rapid depletion of the IP resources, there has been an increased effort to develop technologies for sharing one IP address among a plurality of domains. Actually, the use of one IP address for serving a plurality of Web sites that provide HTTP services was already dealt with in the prior art, and was referred to as Virtual hosting.
There are two methods for carrying out virtual hosting: Name-based virtual hosting and IP-based virtual hosting. In IP-based virtual hosting, one host computer deals with a plurality of IP addresses, each of which corresponds to a domain. In name-based virtual hosting, one IP address is shared by a plurality of domains.
The HTTP/1.1 protocol and a common extension to HTTP/1.0 support name-based virtual hosting, and accordingly Web servers are compatible with this protocol. This is implemented by including the Web domain in the HTTP “GET” request. However, in the prior art no solutions to the problem of sharing one IP address among a plurality of domains that provide Web services beyond HTTP (such as FTP and e-mail services) has been presented.
It is an object of the present invention to provide a method and system for providing a web service by a plurality of web domains through a single IP address, which can be implemented for HTTP as well as for FTP, SMTP, POP3 and other Web services.
Other objects and advantages of the invention will become apparent as the description proceeds.